Entrenar un Segmentador
Esta guía le muestra cómo configurar y ajustar la función de segmentación del OV20i para detectar, medir y analizar automáticamente características o defectos específicos en sus piezas. Use segmentación cuando necesite identificar formas irregulares, medir áreas o detectar patrones específicos que no pueden manejarse con una clasificación simple.
Cuándo Usar Segmentación: Defectos en la superficie, derrames de líquidos, formas irregulares, medición de áreas, detección de patrones o cualquier característica que requiera precisión a nivel de píxel.
Antes de Comenzar
Lo que Necesitará
- Sistema de cámara OV20i configurado y conectado
- Piezas de prueba con las características que desea segmentar (por ejemplo, láminas con marcas de lápiz)
- Buenas condiciones de iluminación para su aplicación específica
- 15-20 imágenes de muestra para entrenamiento
Paso 1: Crear una Receta de Segmentación
1.1 Iniciar Nueva Receta
- Navegue a la página All Recipes
- Haga clic en
+ New Recipe
(esquina superior derecha) - Ingrese Nombre de la Receta: Use un nombre descriptivo como "Pencil_Mark_Detection" o "Surface_Defect_Segmentation"
- Seleccione Tipo de Receta: Elija "Segmentation" en el menú desplegable
- Haga clic en
OK
para crear
1.2 Activar Receta
- Encuentre su receta en la lista (aparece como "Inactive")
- Haga clic en
Actions > Activate
- Haga clic en
Activate
para confirmar
✅ Resultado: La receta ahora está activa y lista para configuración.
Paso 2: Acceder al Editor de Recetas
- Haga clic en
Edit
junto a su receta activa - Haga clic en
Open Editor
para confirmar
Ahora verá el Editor de Recetas con opciones específicas para segmentación.
Paso 3: Configurar Ajustes de Cámara
3.1 Abrir Configuración de Imagen
- Haga clic en
Configure Imaging
(parte inferior izquierda)
3.2 Optimizar Enfoque para Segmentación
El enfoque es crítico para una detección precisa de bordes:
- Coloque su pieza de prueba en el campo de visión de la cámara
- Ajuste el enfoque hasta que los bordes estén nítidos y claros
- Pruebe con diferentes piezas para asegurar un enfoque consistente en todo su rango
- Enfoque en la superficie donde aparecerán defectos/características
- Asegúrese que toda el área de interés esté en foco nítido
- Es preferible un enfoque ligeramente sobreenfocado que un enfoque suave para segmentación
3.3 Establecer Exposición Óptima
Una exposición adecuada asegura detección consistente de características:
- Ajuste la exposición para lograr iluminación equilibrada
- Evite áreas sobreexpuestas (regiones completamente blancas)
- Asegúrese que las características sean visibles con buen contraste
Guías de Exposición para Segmentación:
- Las características deben tener contraste claro con el fondo
- Evite sombras que puedan confundirse con defectos
- Pruebe con diferentes condiciones de las piezas (limpias, sucias, desgastadas)
3.4 Configurar Patrón de Iluminación LED
Elija la iluminación según lo que esté segmentando:
Tipo de Característica | Iluminación Recomendada | Por qué |
---|---|---|
Defectos en superficie | Bright field | Iluminación uniforme que muestra irregularidades de superficie |
Rayaduras/grietas | Side lighting | Crea sombras que resaltan defectos lineales |
Características elevadas | Dark field | Hace que las áreas elevadas destaquen sobre el fondo |
Derrames de líquidos | Side lighting | Muestra diferencias en textura superficial |
3.5 Ajustar Gamma para Mejorar Características
- Aumente Gamma para mejorar el contraste entre características y fondo
- Pruebe diferentes valores mientras observa sus características objetivo
- Encuentre el ajuste que haga las características más distinguibles
3.6 Guardar Configuración
- Revise los ajustes en la vista previa en vivo
- Haga clic en
Save Imaging Settings
✅ Punto de control: Las características deben ser claramente visibles con buen contraste.
Paso 4: Configurar Plantilla y Alineación
4.1 Navegar a la Sección de Plantilla
Haga clic en "Template Image and Alignment" en el menú de migas de pan
4.2 Configurar Alineación (Opcional)
Para este ejemplo, omitiremos la alineación:
- Seleccione
Skip Aligner
si las piezas están posicionadas consistentemente - Haga clic en
Save
Cuándo Usar Alineador: Active esta opción cuando las piezas llegan en posiciones u orientaciones variables que afectarían la precisión de segmentación.
Paso 5: Definir Región de Inspección
5.1 Navegar a Configuración de Inspección
Haga clic en "Inspection Setup" en el menú de migas de pan
5.2 Establecer Región de Interés (ROI)
El ROI define dónde ocurrirá la segmentación:
- Coloque una pieza de prueba en el campo de visión de la cámara
- Arrastre las esquinas del ROI para enmarcar el área de inspección
- Dimensione el ROI apropiadamente:
- Incluya todas las áreas donde puedan aparecer características
- Excluya regiones de fondo innecesarias
- Deje un pequeño margen alrededor de las ubicaciones esperadas de las características
5.3 Mejores Prácticas para ROI en Segmentación
Hacer | No hacer |
---|---|
Cubrir toda la superficie de inspección | Incluir objetos irrelevantes de fondo |
Dejar espacio de margen alrededor de los bordes | Hacer el ROI demasiado pequeño para variaciones de características |
Considerar variación en posicionamiento de piezas | Superponer con fijaciones o herramientas |
Probar con las características más grandes esperadas | Incluir áreas con marcas permanentes |
5.4 Guardar Configuración de ROI
- Verifique que el ROI cubra todas las áreas objetivo
- Haga clic en
Save
Paso 6: Etiquetar Datos de Entrenamiento
6.1 Navegar a Etiquetar y Entrenar
Haga clic en "Label And Train" en el menú de migas de pan
6.2 Configurar Clase de Inspección
- Haga clic en
Edit
bajo Inspection Types - Renombre la clase para que coincida con su característica (por ejemplo, "Pencil Mark", "Surface Defect", "Spill Area")
- Elija color de clase para identificación visual
- Guarde los cambios
6.3 Capturar y Etiquetar Imágenes de Entrenamiento
Necesita mínimo 10 imágenes etiquetadas, pero se recomiendan 15-20:
Proceso de Captura de Imagen
- Coloque la primera pieza de prueba en el área de inspección
- Tome la imagen usando la interfaz de la cámara
- Use la herramienta Brush para pintar sobre las características objetivo
- Pinte con precisión:
- Cubra toda el área de la característica
- Manténgase dentro de los límites de la característica
- No pinte áreas de fondo
- Use un enfoque de etiquetado consistente
- Haga clic en
Save Annotations
- Repita con la siguiente pieza
Mejores Prácticas de Etiquetado
Buen Etiquetado | Mal Etiquetado |
---|---|
Límites precisos de características | Pintura desordenada en bordes |
Definición consistente de características | Criterios inconsistentes |
Cobertura completa de características | Áreas de características faltantes |
Fondo limpio (sin pintar) | Pintura accidental en fondo |
6.4 Variedad en Datos de Entrenamiento
Asegúrese que su conjunto de entrenamiento incluya:
- Diferentes tamaños de características
- Varias intensidades de características
- Múltiples ubicaciones dentro del ROI
- Diferentes condiciones de iluminación (si aplica)
- Casos límite y ejemplos marginales
6.5 Revisión de Calidad de Datos de Entrenamiento
- Revise todas las imágenes etiquetadas
- Verifique un enfoque de etiquetado consistente
- Elimine ejemplos etiquetados incorrectamente
- Agregue más ejemplos si es necesario
Paso 7: Entrenar Modelo de Segmentación
7.1 Iniciar Proceso de Entrenamiento
- Haga clic en
Return to Live
cuando termine de etiquetar - Haga clic en
Train Segmentation Model
7.2 Configurar Parámetros de Entrenamiento
- Establezca Número de Iteraciones:
- Entrenamiento rápido: 50-100 iteraciones (5-10 minutos)
- Calidad de producción: 200-500 iteraciones (15-30 minutos)
- Alta precisión: 500+ iteraciones (30+ minutos)
- Haga clic en
Start Training
7.3 Monitorear Progreso de Entrenamiento
El progreso muestra:
- Número de iteración actual
- Porcentaje de precisión del entrenamiento
- Tiempo estimado para completar
Controles de Entrenamiento:
- Abortar Entrenamiento: Detener si surgen problemas
- Terminar Entrenamiento Temprano: Detener cuando la precisión sea suficiente
- 85% de precisión suele ser adecuado para producción
- El entrenamiento se detiene automáticamente al alcanzar la precisión objetivo
- Más datos de entrenamiento suelen ser mejor que más iteraciones
Paso 8: Probar Rendimiento de Segmentación
8.1 Acceder a Vista Previa en Vivo
- Haga clic en
Live Preview
después de completar el entrenamiento - Pruebe con varias piezas:
- Piezas buenas conocidas (deberían mostrar segmentación mínima o nula)
- Piezas defectuosas conocidas (deberían resaltar defectos)
- Casos límite y ejemplos marginales
8.2 Evaluar Resultados
Revise la calidad de segmentación:
Métrica | Buen Rendimiento | Necesita Mejora |
---|---|---|
Precisión | Encuentra características reales consistentemente | Pierde características evidentes |
Precisión (Precision) | Pocos falsos positivos | Muchas áreas de fondo resaltadas |
Calidad de Bordes | Límites limpios y precisos | Bordes ásperos o imprecisos |
Consistencia | Resultados similares en pruebas repetidas | Resultados muy variables |
8.3 Solución de Problemas por Resultados Deficientes
Problema | Causa Probable | Solución |
---|---|---|
Faltan características | Datos de entrenamiento insuficientes | Agregar más ejemplos etiquetados |
Falsos positivos | Mala iluminación/contraste | Mejorar ajustes de imagen |
Bordes ásperos | Calidad de imagen pobre | Mejorar enfoque/iluminación |
Resultados inconsistentes | Variedad insuficiente en entrenamiento | Agregar ejemplos más diversos |
Paso 9: Configurar Lógica de Aprobación/Rechazo
9.1 Acceder al Bloque IO
- Asegúrese que el modelo AI muestre verde (estado entrenado)
- Navegue al Bloque IO vía menú de migas de pan
9.2 Eliminar Lógica Predeterminada
- Elimine el nodo Classification Block Logic
- Prepárese para construir lógica personalizada de segmentación
9.3 Construir Flujo de Segmentación
Cree un flujo Node-RED con estos componentes:
- Arrastre nodos desde el panel izquierdo:
- Nodo Function (para lógica)
- Nodo Debug (para pruebas)
- Nodo final Pass/Fail
- Conecte los nodos con cables
9.4 Configurar Lógica Según Sus Necesidades
Opción A: Aprobar si No se Detectan Defectos
Caso de uso: Inspección de calidad donde cualquier característica detectada es fallo
Código Nodo Function:
const allBlobs = msg.payload.segmentation.blobs;
const results = allBlobs.length < 1; // Aprobar si no se encuentran características
msg.payload = results;
return msg;
Opción B: Aprobar si Solo Hay Defectos Pequeños
Caso de uso: Aceptar defectos menores debajo de un umbral de tamaño
Código Nodo Function:
const threshold = 500; // Ajuste el umbral de conteo de píxeles
const allBlobs = msg.payload.segmentation.blobs;
const allUnderThreshold = allBlobs.every(blob => blob.pixel_count < threshold);
msg.payload = allUnderThreshold;
return msg;
Opción C: Aprobar si el Área Total de Defectos es Pequeña
Caso de uso: Aceptar piezas con área total limitada de defectos
Código Nodo Function:
const threshold = 5000; // Ajuste el umbral total de píxeles
const allBlobs = msg.payload.segmentation.blobs;
const totalArea = allBlobs.reduce((sum, blob) => sum + blob.pixel_count, 0);
msg.payload = totalArea < threshold;
return msg;
9.5 Configurar Nodo Function
- Haga doble clic en el nodo Function
- Copie el código apropiado de los ejemplos anteriores
- Péguelo en la pestaña "On Message"
- Ajuste los valores de umbral para su aplicación
- Haga clic en
Done
9.6 Desplegar y Probar Lógica
- Haga clic en
Deploy
para activar la lógica - Navegue al HMI para pruebas
- Pruebe con piezas buenas y malas conocidas
- Verifique que los resultados de aprobación/rechazo coincidan con lo esperado
Paso 10: Validación en Producción
10.1 Pruebas Exhaustivas
Pruebe el sistema de segmentación con:
Caso de Prueba | Resultado Esperado | Acción si Falla |
---|---|---|
Piezas limpias | Aprobar (sin segmentación) | Ajustar umbrales o reentrenar |
Defectos menores | Aprobar/Rechazar según criterios | Refinar parámetros de lógica |
Defectos mayores | Rechazar (segmentación clara) | Verificar precisión del modelo |
Casos límite | Comportamiento consistente | Agregar datos de entrenamiento |